home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / etc / wlan / shared.prism2 < prev   
Text File  |  2006-03-31  |  4KB  |  113 lines

  1. # etc/wlan/shared.NSD
  2. #
  3. # Copyright (C) 2002 AbsoluteValue Systems, Inc.  All Rights Reserved.
  4. # --------------------------------------------------------------------
  5. #
  6. # linux-wlan
  7. #
  8. #   The contents of this file are subject to the Mozilla Public
  9. #   License Version 1.1 (the "License"); you may not use this file
  10. #   except in compliance with the License. You may obtain a copy of
  11. #   the License at http://www.mozilla.org/MPL/
  12. #
  13. #   Software distributed under the License is distributed on an "AS
  14. #   IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
  15. #   implied. See the License for the specific language governing
  16. #   rights and limitations under the License.
  17. #
  18. #   Alternatively, the contents of this file may be used under the
  19. #   terms of the GNU Public License version 2 (the "GPL"), in which
  20. #   case the provisions of the GPL are applicable instead of the
  21. #   above.  If you wish to allow the use of your version of this file
  22. #   only under the terms of the GPL and not to allow others to use
  23. #   your version of this file under the MPL, indicate your decision
  24. #   by deleting the provisions above and replace them with the notice
  25. #   and other provisions required by the GPL.  If you do not delete
  26. #   the provisions above, a recipient may use your version of this
  27. #   file under either the MPL or the GPL.
  28. #
  29. # --------------------------------------------------------------------
  30. #
  31. # Inquiries regarding the linux-wlan Open Source project can be
  32. # made directly to:
  33. #
  34. # AbsoluteValue Systems Inc.
  35. # info@linux-wlan.com
  36. # http://www.linux-wlan.com
  37. #
  38. # --------------------------------------------------------------------
  39. # This file contains NSD specific shell routines called from the 
  40. # global shell routines found in linux-wlan/etc.
  41. # --------------------------------------------------------------------
  42.  
  43. PRISM2DL=/sbin/prism2dl
  44.  
  45. prism2_fwload ()
  46. {
  47.     # $1 == wlandev
  48.     # Perform NSD specific actions for loading f/w
  49.  
  50.     if [ ! -x $PRISM2DL ]; then
  51.         $ECHO $PRISM2DL not found, aborting firmware download.
  52.         return 0
  53.     fi
  54.  
  55.     # figure out hwtype 
  56.     initnichw="0007" # pci, 1x16 SRAM
  57.     source_procfile /proc/net/p80211/$1/nsd
  58.  
  59.     cp $FIRMWARE_DIR/prism2_ssf.pda /tmp
  60.     echo "2 0400 $initnichw" >> /tmp/prism2_ssf.pda
  61.     oldhw=$initnichw
  62.     
  63.     # figure out firmware image and dump it over.
  64.  
  65.     $WLANCTL $1 lnxreq_ifstate ifstate=fwload
  66.     HARDWARE=`$PRISM2DL -s $1 | grep 0x0008 | cut -c26-29`
  67.     case "$HARDWARE" in
  68.     8002|8003|8004|8008)  # (3841)
  69.         $PRISM2DL -r $FIRMWARE_DIR/prism2_r1.hex $1
  70.         ;;
  71.     800a|800b|8012|8016|801a|8021) # AMD Parallel Flash (3842)
  72.         $PRISM2DL -r $FIRMWARE_DIR/prism2_af.hex -r $FIRMWARE_DIR/prism2_rf.hex $1
  73.         ;;
  74.     800c|8013|8017|801b|8022)   # SST Parallel Flash (3842)
  75.         $PRISM2DL -r $FIRMWARE_DIR/prism2_ak.hex -r $FIRMWARE_DIR/prism2_rf.hex $1
  76.         ;;
  77.     800e|8015|8019|801d|8024)  # AT24C08 Small Serial Flash (3842)
  78.          $PRISM2DL -r $FIRMWARE_DIR/prism2_pm.hex -r $FIRMWARE_DIR/prism2_rf.hex $1
  79.         ;;
  80.     800d|800e|8014|8015|8019|801c|801d|8023|8024)
  81.         $PRISM2DL -r $FIRMWARE_DIR/prism2_rf.hex $1
  82.     ;;
  83.     800a|800f|8010|8011|801e|801f|8020|8025|8026|8027)  # USB
  84.         $PRISM2DL -r $FIRMWARE_DIR/prism2_ru.hex $1
  85.         ;;
  86.     *)
  87.         $ECHO "Unknown prism2 hardware type $HARDWARE ($hwtype), assuming SSF"
  88.         $PRISM2DL -p /tmp/prism2_ssf.pda -r $FIRMWARE_DIR/prism2_pm.hex $1
  89.  
  90.         # double-check the hwtype
  91.         source_procfile /proc/net/p80211/$1/nsd
  92.         # if it doesn't line up, fix the PDA and try again.
  93.         if [ ! "$initnichw" = "$oldhw" ] ; then
  94.             cp $FIRMWARE_DIR/prism2_ssf.pda /tmp
  95.             echo "2 0400 $initnichw" >> /tmp/prism2_ssf.pda
  96.             $PRISM2DL -p /tmp/prism2_ssf.pda -r $FIRMWARE_DIR/prism2_pm.hex $1
  97.         fi
  98.  
  99.         $PRISM2DL -r $FIRMWARE_DIR/prism2_pm.hex -r $FIRMWARE_DIR/prism2_rf.hex $1
  100.         ;;
  101.     esac
  102.  
  103.     return $?
  104. }
  105.  
  106. prism2_mibset ()
  107. {
  108.     # $1 == wlandev
  109.     # Global (always performed) NSD specific MIB settings.
  110.     return 0
  111. }
  112.  
  113.